package com.huqing.icu.model;

import com.baomidou.mybatisplus.annotation.TableName;
import com.huqing.icu.enums.FileStatusEnum;
import com.huqing.icu.enums.UserFileTypeEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.sql.Timestamp;

/**
 * @Description 对话消息引用文件表对应的实体类
 * @Author huqing
 * @Date 2025/7/26 17:05
 **/
@Data
@TableName("user_file")
public class ChatFile {

    @Schema(description = "主键id")
    private Long id;

    @Schema(description = "用户ID")
    private Long userId;

    @Schema(description = "文件名称")
    private String fileName;

    /**
     * @see UserFileTypeEnum
     */
    @Schema(description = "文件类型")
    private String fileType;

    @Schema(description = "文件大小，单位字节")
    private Long fileSize;

    /**
     * @see FileStatusEnum
     */
    @Schema(description = "状态 PARSING-解析中 CONTENT_EMPTY-未提取到文字")
    private String status;

    @Schema(description = "token使用量")
    private Long tokenUsage;

    @Schema(description = "是否删除 0-否 1-是")
    private Integer isDeleted;

    @Schema(description = "创建时间")
    private Timestamp createTime;

    @Schema(description = "更新时间")
    private Timestamp modifyTime;
}